inspector: Improve handling of object-valued properties
authorMatthias Clasen <mclasen@redhat.com>
Thu, 8 May 2014 05:26:17 +0000 (01:26 -0400)
committerMatthias Clasen <mclasen@redhat.com>
Sun, 11 May 2014 02:04:23 +0000 (22:04 -0400)
When showing the objects in the tree, use the property name
as the name thats shown in the list. This makes it easier
to differentiate e.g. hadjustment and vadjustment in a
GtkScrolledWindow.

modules/inspector/property-cell-renderer.c
modules/inspector/widget-tree.c
modules/inspector/widget-tree.h

index 10d989870dc8c5622ea06b853b0dd4fcf5b5d4a9..770554a5c2c4ae096638ca467800d16652b9a8b4 100644 (file)
@@ -274,7 +274,7 @@ start_editing (GtkCellRenderer      *renderer,
             }
           else if (gtk_inspector_widget_tree_find_object (widget_tree, r->priv->object, &iter))
             {
-              gtk_inspector_widget_tree_append_object (widget_tree, prop_object, &iter);
+              gtk_inspector_widget_tree_append_object (widget_tree, prop_object, &iter, prop->name);
               gtk_inspector_widget_tree_select_object (widget_tree, prop_object);
             }
           else
index 3dc585ad32ba5df5ee316b12fdfc22905e0f9eee..eda0c6eb6037e8f726ae83a26a600100b111c99e 100644 (file)
@@ -74,7 +74,7 @@ gtk_inspector_widget_tree_init (GtkInspectorWidgetTree *wt)
                                            (GDestroyNotify) gtk_tree_iter_free);
   gtk_widget_init_template (GTK_WIDGET (wt));
 
-  gtk_inspector_widget_tree_append_object (wt, G_OBJECT (gtk_settings_get_default ()), NULL);
+  gtk_inspector_widget_tree_append_object (wt, G_OBJECT (gtk_settings_get_default ()), NULL, NULL);
 }
 
 static void
@@ -137,17 +137,17 @@ on_container_forall (GtkWidget *widget,
                      gpointer   data)
 {
   FindAllData *d = data;
-  gtk_inspector_widget_tree_append_object (d->wt, G_OBJECT (widget), d->iter);
+  gtk_inspector_widget_tree_append_object (d->wt, G_OBJECT (widget), d->iter, NULL);
 }
 
 void
 gtk_inspector_widget_tree_append_object (GtkInspectorWidgetTree *wt,
                                          GObject                *object,
-                                         GtkTreeIter            *parent_iter)
+                                         GtkTreeIter            *parent_iter,
+                                         const gchar            *name)
 {
   GtkTreeIter iter;
   const gchar *class_name = G_OBJECT_CLASS_NAME (G_OBJECT_GET_CLASS (object));
-  const gchar *name = NULL;
   gchar *address;
   gboolean realized;
   gboolean mapped;
@@ -160,7 +160,8 @@ gtk_inspector_widget_tree_append_object (GtkInspectorWidgetTree *wt,
   if (is_widget)
     {
       GtkWidget *widget = GTK_WIDGET (object);
-      name = gtk_widget_get_name (GTK_WIDGET (object));
+       if (name == NULL)
+         name = gtk_widget_get_name (GTK_WIDGET (object));
       realized = gtk_widget_get_realized  (widget);
       mapped = gtk_widget_get_mapped (widget);
       visible = gtk_widget_get_visible (widget);
@@ -212,8 +213,8 @@ gtk_inspector_widget_tree_scan (GtkInspectorWidgetTree *wt,
 {
   gtk_tree_store_clear (wt->priv->model);
   g_hash_table_remove_all (wt->priv->iters);
-  gtk_inspector_widget_tree_append_object (wt, G_OBJECT (gtk_settings_get_default ()), NULL);
-  gtk_inspector_widget_tree_append_object (wt, G_OBJECT (window), NULL);
+  gtk_inspector_widget_tree_append_object (wt, G_OBJECT (gtk_settings_get_default ()), NULL, NULL);
+  gtk_inspector_widget_tree_append_object (wt, G_OBJECT (window), NULL, NULL);
 
   gtk_tree_view_columns_autosize (GTK_TREE_VIEW (wt));
 }
index d3616e28af213d2deb1643717a3746804525619c..5a880a6d5616531daf84aa781ab44e6cbcdb1c2b 100644 (file)
@@ -65,7 +65,8 @@ void       gtk_inspector_widget_tree_select_object       (GtkInspectorWidgetTree
                                                           GObject                *object);
 void       gtk_inspector_widget_tree_append_object       (GtkInspectorWidgetTree *wt,
                                                           GObject                *object,
-                                                          GtkTreeIter            *parent_iter);
+                                                          GtkTreeIter            *parent_iter,
+                                                          const gchar            *name);
 gboolean   gtk_inspector_widget_tree_find_object         (GtkInspectorWidgetTree *wt,
                                                           GObject                *object,
                                                           GtkTreeIter            *iter);